/**
* @file        bsp.h
* @brief       This file contains all the functions prototypes for the bsp firmware library. 
* @author      ChipSea MCU Group
* @version     1.0.0
* @date        2022.04.25
* @copyright   CHIPSEA TECHNOLOGIES (SHENZHEN) CORP.
* @note        
****************************************************************************************************
* @par Modify record:
* <tr><th>Date          <th>Version    <th>Author     <th>Description
* <tr><td>2022.04.25    <td>1.0.0      <td>ChipSea    <td>
* -# 
* </table>
*
****************************************************************************************************
*/


#ifndef __CS_BSP_H__
#define __CS_BSP_H__


#ifdef __cplusplus
 extern "C" {
#endif


/***************************************************************************************************
 * @includes
***************************************************************************************************/
#include "usart.h"
#include "cs32f10x.h"


/** @addtogroup bsp
  * @{
  */

/***************************************************************************************************
 * @definitions
***************************************************************************************************/
#define KEY_PRESS       (__GPIO_INPUT_PIN_GET(GPIOC,GPIO_PIN_13) == SET)

extern volatile unsigned long long FreeRTOSRunTimeTicks;



/***************************************************************************************************
 * @functions
***************************************************************************************************/
/** @defgroup PPP_Exported_Functions bsp Exported Functions
  * @{
  */

void bsp_init(void);

void led1_toggle(void);

void led2_toggle(void);

void tim3_config(uint16_t arr, uint16_t psc);

void tim4_config(uint16_t arr, uint16_t psc);

void ConfigureTimeForRunTimeStats(void);

void key_init(void);
/**
  * @}
  */


#ifdef __cplusplus
}
#endif

#endif /* bsp.h */


/**
  * @}
  */


